统计学习:scikit-learn 中的设置与估计器对象
数据集
Scikit-learn 可以从一个或多个表示为二维阵列的数据集中学习信息。它们可以理解为多维观测数据的列表。这些数组的第一个维度代表样本轴,第二个维度代表特征轴.
scikit-learn 附带一个简单示例: iris(鸢尾花) 数据集
>>> from sklearn import datasets
>>> iris = datasets.load_iris()
>>> data = iris.data
>>> data.shape
(150, 4)
该数据集包含150个鸢尾花观测样本,每个样本包含4个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度,详见 iris.DESCR
。
当数据不是呈 (n_samples, n_features)
形状时,需要进行预处理才能被scikit learn使用。
数据预处理样例:digits(数字)数据集
digits(数字)数据集由1797张8x8的手写数字图像组成
>>> digits = datasets.load_digits()
>>> digits.images.shape
(1797, 8, 8)
>>> import matplotlib.pyplot as plt
>>> plt.imshow(digits.images[-1], cmap=plt.cm.gray_r)
<matplotlib.image.AxesImage object at ...>
为了在scikit-learn使用此数据集,我们需要将每张8x8的图像转换为长度为64的特征向量。
>>> data = digits.images.reshape((digits.images.shape[0], -1))
估计器对象
拟合数据 : scikit-learn 实现的主要API是estimator
(估计器). 估计器(estimator)是在数据中进行学习的任何对象; 它可以是分类、回归或聚类算法或从原始数据中提取/过滤有用特征的转换器。
所有估计器(estimator)对象都公开一个“fit”方法,该方法接受一个数据集(通常是二维阵列):
>>> estimator.fit(data)
估算器参数 : 估计器(estimator)的所有参数可以在实例化时设置,也可以在创建估计器(estimator)之后通过修改相应的属性来设置:
>>> estimator = Estimator(param1=1, param2=2)
>>> estimator.param1
拟合参数 : 当估计器(estimator)拟合完数据之后,所有参数可从估计器(estimator)中获取。拟合参数都是估计器(estimator)对象以下划线结尾的属性:
>>> estimator.estimated_param_
(C) 2007 - 2019, scikit-learn 开发人员(BSD许可证). 显示此页面源码